@page "/pdf/custom-tag"
@inject Microsoft.JSInterop.IJSRuntime JS
@using System.IO
@using Syncfusion.Blazor.Buttons
@inject Microsoft.AspNetCore.Hosting.IWebHostEnvironment hostingEnvironment
@inherits SampleBaseComponent;
@*Hidden:Lines*@

@using BlazorDemos.Data.FileFormats.PDF

@*End:Hidden*@

<SampleDescription>
    <p>This sample demonstrates how to create tagged PDF or accessible PDF from the scratch with custom tags.</p>
</SampleDescription>
<ActionDescription>
   <p>This feature can be used for the people who require assistive technologies when the electronic content is ready. The Essential PDF supports creating tagged PDF with Section 508 compliant. More information about the tagged PDF can be found in this documentation <a target='_blank'
href='https://help.syncfusion.com/file-formats/pdf/working-with-tagged-pdf?_ga=2.212929108.1703522802.1584005056-1302582622.1556169414'>section.</a></p>
</ActionDescription>

<div class="control-section">
    <p style="font-weight:normal">Click the button to view a PDF document generated by Essential PDF. Please note that Adobe Reader or its equivalent is required to view the resultant document. </p>
   
    <div class="button-section">
        <div id="button-control">
            <div class="row">
                <div>
                    <SfButton @onclick="GeneratePDF">Generate PDF</SfButton>
                </div>
            </div>
        </div>
    </div>
</div>

<style>
    .radio-control {
        margin: 0 0 5% 0;
    }    

    .control-section .row {
        margin: 10px 0;
    }
</style>

@code {
    
    /// <summary>
    /// Create and download the simple PDF document
    /// </summary>
    public async void GeneratePDF(MouseEventArgs args)
    {	   
        CustomtagService service = new CustomtagService(hostingEnvironment);
        MemoryStream documentStream = service.CreatePdfDocument();
        await JS.SaveAs("Customtag.pdf", documentStream.ToArray());        
    }
}